package gui.addArcherWindow;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.BorderFactory;
import javax.swing.GroupLayout;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.LayoutStyle;
import javax.swing.SwingUtilities;
import javax.swing.WindowConstants;

import core.CustomIcons;
import core.GuiComponentLabels;

/**
 * This code was edited or generated using CloudGarden's Jigloo SWT/Swing GUI
 * Builder, which is free for non-commercial use. If Jigloo is being used
 * commercially (ie, by a corporation, company or business for any purpose
 * whatever) then you should purchase a license for each developer using Jigloo.
 * Please visit www.cloudgarden.com for details. Use of Jigloo implies
 * acceptance of these licensing terms. A COMMERCIAL LICENSE HAS NOT BEEN
 * PURCHASED FOR THIS MACHINE, SO JIGLOO OR THIS CODE CANNOT BE USED LEGALLY FOR
 * ANY CORPORATE OR COMMERCIAL PURPOSE.
 */
public class AddArcherWindow extends javax.swing.JFrame {
	/** Labels */
	private JLabel nameLabel;
	private JLabel surNameLabel;
	private JLabel birthDateLabel;
	private JLabel countryRatingLabel;
	private JPanel playerDataContainer;
	private JLabel licenseLabel;
	private JLabel genderLabel;
	private JLabel clubLabel;
	private JLabel ageClassLabel;
	private JLabel bowCathegoryLabel;
	private JLabel informationLabel;
	private JLabel ageLabel;
	private JLabel countryLabel;
	private JLabel nationLabel;
	private JLabel ageInformationLabel;

	/** dropDown menus */
	private JComboBox nationDropDown;
	private JComboBox genderDropDown;
	private JComboBox clubDropDown;
	private JComboBox ageClassDropDown;
	private JComboBox bowCathegoryDropDown;
	private JComboBox countryDropDown;

	/** checkboxes */
	private JCheckBox countryRatingCheckBox;
	private JCheckBox licenseCheckBox;
	private JCheckBox isParticipatingCheckbox;

	/** buttons */
	private JButton closeButton;
	private JButton okButton;

	/** text fields */
	private JTextField birthDateTextBox;
	private JTextField surNameTextBox;
	private JTextField nameTextBox;

	/** containers */
	private JPanel optionalContainer;

	/** static object for singleton pattern */
	private static AddArcherWindow instance = null;

	private final AddArcherWindowController controller;
	private final AddArcherWindowKeyListener keyListener;

	private AddArcherWindow() {
		super();
		this.controller = new AddArcherWindowController();
		this.keyListener = new AddArcherWindowKeyListener();
		this.setUndecorated(true);
		this.initGUI();
	}

	public static AddArcherWindow getInstance() {
		if (instance == null) {
			instance = new AddArcherWindow();
		}
		return instance;
	}

	private void initGUI() {
		try {
			GroupLayout thisLayout = new GroupLayout(this.getContentPane());
			this.getContentPane().setLayout(thisLayout);
			this.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
			{
				this.playerDataContainer = new JPanel();
				GroupLayout playerDataContainerLayout = new GroupLayout(this.playerDataContainer);
				this.playerDataContainer.setLayout(playerDataContainerLayout);
				this.playerDataContainer.setBorder(BorderFactory.createTitledBorder("Teilnehmerdaten"));
				{
					this.nameLabel = new JLabel();
					this.nameLabel.setText(GuiComponentLabels.NAME);
					this.nameLabel.setBackground(new java.awt.Color(212, 208, 200));
					this.nameLabel.setFocusTraversalKeysEnabled(false);
				}
				{
					this.nationLabel = new JLabel();
					this.nationLabel.setText(GuiComponentLabels.NATION);
					this.nationLabel.setBackground(new java.awt.Color(212, 208, 200));
					this.nationLabel.setForeground(new java.awt.Color(0, 0, 0));
					this.nationLabel.setFocusTraversalKeysEnabled(false);
				}
				{
					this.ageLabel = new JLabel();
					this.ageLabel.setText(GuiComponentLabels.AGE);
					this.ageLabel.setBackground(new java.awt.Color(212, 208, 200));
				}
				{
					this.bowCathegoryLabel = new JLabel();
					this.bowCathegoryLabel.setText(GuiComponentLabels.BOW_CATHEGORY);
					this.bowCathegoryLabel.setBackground(new java.awt.Color(212, 208, 200));
					this.bowCathegoryLabel.setFocusTraversalKeysEnabled(false);
				}
				{
					this.clubLabel = new JLabel();
					this.clubLabel.setText(GuiComponentLabels.CLUB);
					this.clubLabel.setBackground(new java.awt.Color(212, 208, 200));
					this.clubLabel.setFocusTraversalKeysEnabled(false);
				}
				{
					this.licenseLabel = new JLabel();
					this.licenseLabel.setText(GuiComponentLabels.LICENSE);
					this.licenseLabel.setBackground(new java.awt.Color(212, 208, 200));
				}
				{
					this.countryRatingLabel = new JLabel();
					this.countryRatingLabel.setText(GuiComponentLabels.COUNTRY_RATING);
					this.countryRatingLabel.setBackground(new java.awt.Color(212, 208, 200));
				}
				{
					this.licenseCheckBox = new JCheckBox();
				}
				{
					this.countryRatingCheckBox = new JCheckBox();
				}
				{
					this.surNameLabel = new JLabel();
					this.surNameLabel.setText(GuiComponentLabels.SURNAME);
					this.surNameLabel.setBackground(new java.awt.Color(212, 208, 200));
					this.surNameLabel.setFocusTraversalKeysEnabled(false);
				}
				{
					this.countryLabel = new JLabel();
					this.countryLabel.setText(GuiComponentLabels.COUNTRY);
					this.countryLabel.setBackground(new java.awt.Color(212, 208, 200));
					this.countryLabel.setFocusTraversalKeysEnabled(false);
				}
				{
					this.ageClassLabel = new JLabel();
					this.ageClassLabel.setText(GuiComponentLabels.AGE_CLASS);
					this.ageClassLabel.setBackground(new java.awt.Color(212, 208, 200));
					this.ageClassLabel.setFocusTraversalKeysEnabled(false);
				}
				{
					this.genderLabel = new JLabel();
					this.genderLabel.setText(GuiComponentLabels.GENDER);
					this.genderLabel.setBackground(new java.awt.Color(212, 208, 200));
					this.genderLabel.setFocusTraversalKeysEnabled(false);
				}
				{
					this.birthDateLabel = new JLabel();
					this.birthDateLabel.setText(GuiComponentLabels.BIRTHDATE);
					this.birthDateLabel.setBackground(new java.awt.Color(212, 208, 200));
					this.birthDateLabel.setFocusTraversalKeysEnabled(false);
				}
				{
					this.surNameTextBox = new JTextField();
				}
				{
					this.countryDropDown = new JComboBox();
					this.countryDropDown.setEditable(true);
				}
				{
					this.ageClassDropDown = new JComboBox();
					this.ageClassDropDown.setEditable(true);
				}
				{
					this.genderDropDown = new JComboBox();
					this.genderDropDown.setEditable(false);
				}
				{
					this.birthDateTextBox = new JTextField();
					this.birthDateTextBox.addKeyListener(this.keyListener);
				}
				{
					this.ageInformationLabel = new JLabel();
					this.ageInformationLabel.setText("-");
					this.ageInformationLabel.setBackground(new java.awt.Color(212, 208, 200));

				}
				{
					this.nameTextBox = new JTextField();
				}
				{
					this.nationDropDown = new JComboBox();
					this.nationDropDown.setEditable(true);
				}
				{
					this.bowCathegoryDropDown = new JComboBox();
					this.bowCathegoryDropDown.setEditable(true);
				}
				{
					this.clubDropDown = new JComboBox();
					this.clubDropDown.setEditable(true);
				}
				playerDataContainerLayout.setHorizontalGroup(playerDataContainerLayout.createSequentialGroup().addContainerGap().addGroup(
						playerDataContainerLayout.createParallelGroup().addComponent(this.nationLabel, GroupLayout.Alignment.LEADING, GroupLayout.PREFERRED_SIZE, 140, GroupLayout.PREFERRED_SIZE)
								.addComponent(this.clubLabel, GroupLayout.Alignment.LEADING, GroupLayout.PREFERRED_SIZE, 140, GroupLayout.PREFERRED_SIZE).addComponent(this.licenseLabel,
										GroupLayout.Alignment.LEADING, GroupLayout.PREFERRED_SIZE, 140, GroupLayout.PREFERRED_SIZE).addComponent(this.bowCathegoryLabel, GroupLayout.Alignment.LEADING,
										GroupLayout.PREFERRED_SIZE, 140, GroupLayout.PREFERRED_SIZE).addComponent(this.genderLabel, GroupLayout.Alignment.LEADING, GroupLayout.PREFERRED_SIZE, 140,
										GroupLayout.PREFERRED_SIZE).addComponent(this.nameLabel, GroupLayout.Alignment.LEADING, GroupLayout.PREFERRED_SIZE, 140, GroupLayout.PREFERRED_SIZE)).addGroup(
						playerDataContainerLayout.createParallelGroup().addComponent(this.nationDropDown, GroupLayout.Alignment.LEADING, GroupLayout.PREFERRED_SIZE, 191, GroupLayout.PREFERRED_SIZE)
								.addComponent(this.clubDropDown, GroupLayout.Alignment.LEADING, GroupLayout.PREFERRED_SIZE, 191, GroupLayout.PREFERRED_SIZE).addComponent(this.bowCathegoryDropDown,
										GroupLayout.Alignment.LEADING, GroupLayout.PREFERRED_SIZE, 191, GroupLayout.PREFERRED_SIZE).addComponent(this.licenseCheckBox, GroupLayout.Alignment.LEADING,
										GroupLayout.PREFERRED_SIZE, 191, GroupLayout.PREFERRED_SIZE).addComponent(this.genderDropDown, GroupLayout.Alignment.LEADING, GroupLayout.PREFERRED_SIZE, 191,
										GroupLayout.PREFERRED_SIZE).addComponent(this.nameTextBox, GroupLayout.Alignment.LEADING, GroupLayout.PREFERRED_SIZE, 191, GroupLayout.PREFERRED_SIZE))
						.addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED).addGroup(
								playerDataContainerLayout.createParallelGroup().addComponent(this.ageLabel, GroupLayout.Alignment.LEADING, GroupLayout.PREFERRED_SIZE, 140, GroupLayout.PREFERRED_SIZE)
										.addComponent(this.countryRatingLabel, GroupLayout.Alignment.LEADING, GroupLayout.PREFERRED_SIZE, 140, GroupLayout.PREFERRED_SIZE).addComponent(
												this.surNameLabel, GroupLayout.Alignment.LEADING, GroupLayout.PREFERRED_SIZE, 140, GroupLayout.PREFERRED_SIZE).addComponent(this.countryLabel,
												GroupLayout.Alignment.LEADING, GroupLayout.PREFERRED_SIZE, 140, GroupLayout.PREFERRED_SIZE).addComponent(this.ageClassLabel,
												GroupLayout.Alignment.LEADING, GroupLayout.PREFERRED_SIZE, 140, GroupLayout.PREFERRED_SIZE).addComponent(this.birthDateLabel,
												GroupLayout.Alignment.LEADING, GroupLayout.PREFERRED_SIZE, 140, GroupLayout.PREFERRED_SIZE)).addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED)
						.addGroup(
								playerDataContainerLayout.createParallelGroup().addComponent(this.surNameTextBox, GroupLayout.Alignment.LEADING, 0, 191, Short.MAX_VALUE).addComponent(
										this.countryDropDown, GroupLayout.Alignment.LEADING, 0, 191, Short.MAX_VALUE).addComponent(this.ageClassDropDown, GroupLayout.Alignment.LEADING, 0, 191,
										Short.MAX_VALUE).addComponent(this.birthDateTextBox, GroupLayout.Alignment.LEADING, 0, 191, Short.MAX_VALUE).addComponent(this.countryRatingCheckBox,
										GroupLayout.Alignment.LEADING, 0, 192, Short.MAX_VALUE).addComponent(this.ageInformationLabel, GroupLayout.Alignment.LEADING, 0, 191, Short.MAX_VALUE))
						.addContainerGap());
				playerDataContainerLayout.setVerticalGroup(playerDataContainerLayout.createSequentialGroup().addGroup(
						playerDataContainerLayout.createParallelGroup(GroupLayout.Alignment.BASELINE).addComponent(this.surNameLabel, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, 22,
								GroupLayout.PREFERRED_SIZE).addComponent(this.surNameTextBox, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE,
								GroupLayout.PREFERRED_SIZE).addComponent(this.nameTextBox, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE,
								GroupLayout.PREFERRED_SIZE).addComponent(this.nameLabel, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, 22, GroupLayout.PREFERRED_SIZE)).addPreferredGap(
						LayoutStyle.ComponentPlacement.UNRELATED).addGroup(
						playerDataContainerLayout.createParallelGroup(GroupLayout.Alignment.BASELINE).addComponent(this.countryLabel, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, 22,
								GroupLayout.PREFERRED_SIZE).addComponent(this.countryDropDown, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE,
								GroupLayout.PREFERRED_SIZE).addComponent(this.nationDropDown, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE,
								GroupLayout.PREFERRED_SIZE).addComponent(this.nationLabel, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, 22, GroupLayout.PREFERRED_SIZE))
						.addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED).addGroup(
								playerDataContainerLayout.createParallelGroup(GroupLayout.Alignment.BASELINE).addComponent(this.ageClassLabel, GroupLayout.Alignment.BASELINE,
										GroupLayout.PREFERRED_SIZE, 22, GroupLayout.PREFERRED_SIZE).addComponent(this.ageClassDropDown, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE,
										GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE).addComponent(this.bowCathegoryDropDown, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE,
										GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE).addComponent(this.bowCathegoryLabel, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, 22,
										GroupLayout.PREFERRED_SIZE)).addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED).addGroup(
								playerDataContainerLayout.createParallelGroup(GroupLayout.Alignment.BASELINE).addComponent(this.birthDateLabel, GroupLayout.Alignment.BASELINE,
										GroupLayout.PREFERRED_SIZE, 22, GroupLayout.PREFERRED_SIZE).addComponent(this.birthDateTextBox, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE,
										GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE).addComponent(this.clubDropDown, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE,
										GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE).addComponent(this.clubLabel, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, 22,
										GroupLayout.PREFERRED_SIZE)).addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED).addGroup(
								playerDataContainerLayout.createParallelGroup(GroupLayout.Alignment.BASELINE).addComponent(this.ageInformationLabel, GroupLayout.Alignment.BASELINE,
										GroupLayout.PREFERRED_SIZE, 22, GroupLayout.PREFERRED_SIZE).addComponent(this.ageLabel, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, 22,
										GroupLayout.PREFERRED_SIZE).addComponent(this.genderDropDown, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE,
										GroupLayout.PREFERRED_SIZE).addComponent(this.genderLabel, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE, 22, GroupLayout.PREFERRED_SIZE))
						.addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED).addGroup(
								playerDataContainerLayout.createParallelGroup().addGroup(
										GroupLayout.Alignment.LEADING,
										playerDataContainerLayout.createParallelGroup(GroupLayout.Alignment.BASELINE).addComponent(this.countryRatingCheckBox, GroupLayout.Alignment.BASELINE,
												GroupLayout.PREFERRED_SIZE, 20, GroupLayout.PREFERRED_SIZE).addComponent(this.licenseCheckBox, GroupLayout.Alignment.BASELINE,
												GroupLayout.PREFERRED_SIZE, 20, GroupLayout.PREFERRED_SIZE)).addGroup(
										GroupLayout.Alignment.LEADING,
										playerDataContainerLayout.createParallelGroup(GroupLayout.Alignment.BASELINE).addComponent(this.countryRatingLabel, GroupLayout.Alignment.BASELINE,
												GroupLayout.PREFERRED_SIZE, 22, GroupLayout.PREFERRED_SIZE).addComponent(this.licenseLabel, GroupLayout.Alignment.BASELINE, GroupLayout.PREFERRED_SIZE,
												22, GroupLayout.PREFERRED_SIZE))).addContainerGap(308, 308));
			}
			{
				this.optionalContainer = new JPanel();
				GroupLayout optionalContainerLayout = new GroupLayout(this.optionalContainer);
				this.optionalContainer.setLayout(optionalContainerLayout);
				this.optionalContainer.setBorder(BorderFactory.createTitledBorder("Optional"));
				{
					this.isParticipatingCheckbox = new JCheckBox();
					this.isParticipatingCheckbox.setText(GuiComponentLabels.PARTICIPATES_IN_CURRENT);
				}
				optionalContainerLayout.setHorizontalGroup(optionalContainerLayout.createSequentialGroup().addContainerGap().addComponent(this.isParticipatingCheckbox, 0, 198, Short.MAX_VALUE));
				optionalContainerLayout.setVerticalGroup(optionalContainerLayout.createSequentialGroup().addComponent(this.isParticipatingCheckbox, GroupLayout.PREFERRED_SIZE, 20,
						GroupLayout.PREFERRED_SIZE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 0, Short.MAX_VALUE));
			}
			{
				this.closeButton = new JButton();
				this.closeButton.setText(GuiComponentLabels.CLOSE_BUTTON);
				this.closeButton.setIcon(CustomIcons.exit);
				this.closeButton.addActionListener(new ActionListener() {
					public void actionPerformed(ActionEvent evt) {
						AddArcherWindow.this.dispose();
					}
				});
			}
			{
				this.okButton = new JButton();
				this.okButton.setText(GuiComponentLabels.SAVE_BUTTON);
				this.okButton.setIcon(CustomIcons.ok);
				thisLayout.setVerticalGroup(thisLayout.createSequentialGroup().addContainerGap().addComponent(this.playerDataContainer, GroupLayout.PREFERRED_SIZE, 231, GroupLayout.PREFERRED_SIZE)
						.addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED).addGroup(
								thisLayout.createParallelGroup().addGroup(
										GroupLayout.Alignment.LEADING,
										thisLayout.createSequentialGroup().addComponent(this.optionalContainer, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE).addPreferredGap(
												LayoutStyle.ComponentPlacement.RELATED, 0, Short.MAX_VALUE)).addGroup(
										GroupLayout.Alignment.LEADING,
										thisLayout.createSequentialGroup().addComponent(this.okButton, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE)
												.addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED).addComponent(this.closeButton, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE,
														GroupLayout.PREFERRED_SIZE).addGap(0, 0, Short.MAX_VALUE)).addGroup(
										GroupLayout.Alignment.LEADING,
										thisLayout.createSequentialGroup().addGap(7).addComponent(this.getInformationLabel(), GroupLayout.PREFERRED_SIZE, 43, GroupLayout.PREFERRED_SIZE)
												.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 0, Short.MAX_VALUE))).addContainerGap(42, 42));
				thisLayout.setHorizontalGroup(thisLayout.createSequentialGroup().addContainerGap().addGroup(
						thisLayout.createParallelGroup().addGroup(
								GroupLayout.Alignment.LEADING,
								thisLayout.createSequentialGroup().addComponent(this.optionalContainer, GroupLayout.PREFERRED_SIZE, 272, GroupLayout.PREFERRED_SIZE).addPreferredGap(
										LayoutStyle.ComponentPlacement.UNRELATED).addComponent(this.getInformationLabel(), 0, 304, Short.MAX_VALUE).addPreferredGap(
										LayoutStyle.ComponentPlacement.RELATED, 12, Short.MAX_VALUE).addGroup(
										thisLayout.createParallelGroup().addComponent(this.okButton, GroupLayout.Alignment.LEADING, GroupLayout.PREFERRED_SIZE, 144, GroupLayout.PREFERRED_SIZE)
												.addComponent(this.closeButton, GroupLayout.Alignment.LEADING, GroupLayout.PREFERRED_SIZE, 144, GroupLayout.PREFERRED_SIZE))).addComponent(
								this.playerDataContainer, GroupLayout.Alignment.LEADING, 0, 750, Short.MAX_VALUE)).addContainerGap());
				this.okButton.addActionListener(new ActionListener() {
					public void actionPerformed(ActionEvent evt) {
						AddArcherWindow.this.controller.saveEntry();
					}

				});
			}
			this.pack();
			this.setSize(774, 352);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public static void main(String [] args) {
		SwingUtilities.invokeLater(new Runnable() {
			public void run() {
				AddArcherWindow.getInstance().setLocationRelativeTo(null);
				AddArcherWindow.getInstance().setVisible(true);
				AddArcherWindow.getInstance().getController().setDropDownMenus();
			}
		});
	}

	public JLabel getNameLabel() {
		return this.nameLabel;
	}

	public void setNameLabel(JLabel nameLabel) {
		this.nameLabel = nameLabel;
	}

	public JLabel getSurNameLabel() {
		return this.surNameLabel;
	}

	public void setSurNameLabel(JLabel surNameLabel) {
		this.surNameLabel = surNameLabel;
	}

	public JLabel getBirthDateLabel() {
		return this.birthDateLabel;
	}

	public void setBirthDateLabel(JLabel birthDateLabel) {
		this.birthDateLabel = birthDateLabel;
	}

	public JLabel getCountryRatingLabel() {
		return this.countryRatingLabel;
	}

	public void setCountryRatingLabel(JLabel countryRatingLabel) {
		this.countryRatingLabel = countryRatingLabel;
	}

	public JPanel getPlayerDataContainer() {
		return this.playerDataContainer;
	}

	public void setPlayerDataContainer(JPanel playerDataContainer) {
		this.playerDataContainer = playerDataContainer;
	}

	public JLabel getLicenseLabel() {
		return this.licenseLabel;
	}

	public void setLicenseLabel(JLabel licenseLabel) {
		this.licenseLabel = licenseLabel;
	}

	public JLabel getGenderLabel() {
		return this.genderLabel;
	}

	public void setGenderLabel(JLabel genderLabel) {
		this.genderLabel = genderLabel;
	}

	public JLabel getClubLabel() {
		return this.clubLabel;
	}

	public void setClubLabel(JLabel clubLabel) {
		this.clubLabel = clubLabel;
	}

	public JLabel getAgeClassLabel() {
		return this.ageClassLabel;
	}

	public void setAgeClassLabel(JLabel ageClassLabel) {
		this.ageClassLabel = ageClassLabel;
	}

	public JLabel getBowCathegoryLabel() {
		return this.bowCathegoryLabel;
	}

	public void setBowCathegoryLabel(JLabel bowCathegoryLabel) {
		this.bowCathegoryLabel = bowCathegoryLabel;
	}

	public JLabel getAgeLabel() {
		return this.ageLabel;
	}

	public void setAgeLabel(JLabel ageLabel) {
		this.ageLabel = ageLabel;
	}

	public JLabel getCountryLabel() {
		return this.countryLabel;
	}

	public void setCountryLabel(JLabel countryLabel) {
		this.countryLabel = countryLabel;
	}

	public JLabel getNationLabel() {
		return this.nationLabel;
	}

	public void setNationLabel(JLabel nationLabel) {
		this.nationLabel = nationLabel;
	}

	public JLabel getAgeInformationLabel() {
		return this.ageInformationLabel;
	}

	public void setAgeInformationLabel(JLabel ageInformationLabel) {
		this.ageInformationLabel = ageInformationLabel;
	}

	public JComboBox getNationDropDown() {
		return this.nationDropDown;
	}

	public void setNationDropDown(JComboBox nationDropDown) {
		this.nationDropDown = nationDropDown;
	}

	public JComboBox getGenderDropDown() {
		return this.genderDropDown;
	}

	public void setGenderDropDown(JComboBox genderDropDown) {
		this.genderDropDown = genderDropDown;
	}

	public JComboBox getClubDropDown() {
		return this.clubDropDown;
	}

	public void setClubDropDown(JComboBox clubDropDown) {
		this.clubDropDown = clubDropDown;
	}

	public JComboBox getAgeClassDropDown() {
		return this.ageClassDropDown;
	}

	public void setAgeClassDropDown(JComboBox ageClassDropDown) {
		this.ageClassDropDown = ageClassDropDown;
	}

	public JComboBox getBowCathegoryDropDown() {
		return this.bowCathegoryDropDown;
	}

	public void setBowCathegoryDropDown(JComboBox bowCathegoryDropDown) {
		this.bowCathegoryDropDown = bowCathegoryDropDown;
	}

	public JComboBox getCountryDropDown() {
		return this.countryDropDown;
	}

	public void setCountryDropDown(JComboBox countryDropDown) {
		this.countryDropDown = countryDropDown;
	}

	public JCheckBox getCountryRatingCheckBox() {
		return this.countryRatingCheckBox;
	}

	public void setCountryRatingCheckBox(JCheckBox countryRatingCheckBox) {
		this.countryRatingCheckBox = countryRatingCheckBox;
	}

	public JCheckBox getLicenseCheckBox() {
		return this.licenseCheckBox;
	}

	public void setLicenseCheckBox(JCheckBox licenseCheckBox) {
		this.licenseCheckBox = licenseCheckBox;
	}

	public JCheckBox getIsParticipatingCheckbox() {
		return this.isParticipatingCheckbox;
	}

	public void setIsParticipatingCheckbox(JCheckBox isParticipatingCheckbox) {
		this.isParticipatingCheckbox = isParticipatingCheckbox;
	}

	public JButton getCloseButton() {
		return this.closeButton;
	}

	public void setCloseButton(JButton closeButton) {
		this.closeButton = closeButton;
	}

	public JButton getOkButton() {
		return this.okButton;
	}

	public void setOkButton(JButton okButton) {
		this.okButton = okButton;
	}

	public JTextField getBirthDateTextBox() {
		return this.birthDateTextBox;
	}

	public JTextField getSurNameTextBox() {
		return this.surNameTextBox;
	}

	public void setSurNameTextBox(JTextField surNameTextBox) {
		this.surNameTextBox = surNameTextBox;
	}

	public JTextField getNameTextBox() {
		return this.nameTextBox;
	}

	public void setNameTextBox(JTextField nameTextBox) {
		this.nameTextBox = nameTextBox;
	}

	public JPanel getOptionalContainer() {
		return this.optionalContainer;
	}

	public void setOptionalContainer(JPanel optionalContainer) {
		this.optionalContainer = optionalContainer;
	}

	public AddArcherWindowController getController() {
		return this.controller;
	}

	public JLabel getInformationLabel() {
		if (this.informationLabel == null) {
			this.informationLabel = new JLabel();
		}
		return this.informationLabel;
	}

}
